import 'dart:async';
import 'package:video_setting/pages/video_setting/lock/unicom_basic_lock.dart';

abstract class Lock {
  factory Lock({bool reentrant = false}) {
    return UnicomBasicLock();
  }
  Future<T> synchronized<T>(FutureOr<T> Function() computation, {Duration timeout});
  bool get locked;
  bool get inLock;
}
